package com.small.nine.wxmp.utils.wx.crypt;

import java.util.ArrayList;
import java.util.List;

/**
 * @author Tencent
 * @date 2021-08-04 10:23
 */
public class ByteGroup {
    List<Byte> byteContainer = new ArrayList<>();

    /**
     * 转为 byte[]
     *
     * @return byte[]
     */
    public byte[] toBytes() {
        byte[] bytes = new byte[this.byteContainer.size()];
        for (int i = 0; i < this.byteContainer.size(); i++) {
            bytes[i] = this.byteContainer.get(i);
        }
        return bytes;
    }

    /**
     * 将传进来的 byte[] 添加
     *
     * @param bytes 要添加的byte[]
     * @return {@link ByteGroup}
     */
    public ByteGroup addBytes(byte[] bytes) {
        for (byte b : bytes) {
            this.byteContainer.add(b);
        }
        return this;
    }

    /**
     * 获取 成员变量 byteContainer 的长度
     *
     * @return byteContainer 的长度
     */
    public int size() {
        return byteContainer.size();
    }
}
